package com.qys.livesMall.anchor.mapper;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.qys.livesMall.anchor.model.dto.task.app.SellTaskAnchorPageDTO;
import com.qys.livesMall.anchor.model.dto.task.app.SellTaskHallPageDTO;
import com.qys.livesMall.anchor.model.dto.task.sys.SysSellTaskAnchorPageDTO;
import com.qys.livesMall.anchor.model.entity.AnchorSellTask;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.qys.livesMall.anchor.model.vo.task.app.AppSellTaskAnchorPageVO;
import com.qys.livesMall.anchor.model.vo.task.app.SellTaskHallPageVO;
import com.qys.livesMall.anchor.model.vo.task.sys.SysSellTaskAnchorPageVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 主播接取带货任务表 Mapper 接口
 * </p>
 *
 * @author
 * @since 2023-06-16
 */
public interface AnchorSellTaskMapper extends BaseMapper<AnchorSellTask> {

    Page<SellTaskHallPageVO> taskHallListByAppPage(@Param("page") Page<SellTaskHallPageVO> page,
                                                   @Param("query") SellTaskHallPageDTO queryDTO,
                                                   @Param("shopSellTaskIdList") List<Long> shopSellTaskIdList);

    /**
     * 主播截取任务id集合(不包含被拒绝任务)
     */
    List<Long> receivedList(@Param("anchorId") Long anchorId);


    Page<AppSellTaskAnchorPageVO> anchorSellTaskListByAppPage(@Param("page") Page<AppSellTaskAnchorPageVO> page,
                                                              @Param("query") SellTaskAnchorPageDTO queryDTO);

    Page<SysSellTaskAnchorPageVO> anchorSellTaskListBySysPage(@Param("page") Page<SysSellTaskAnchorPageVO> page,
                                                              @Param("query") SysSellTaskAnchorPageDTO queryDTO);

    List<Long> getAnchorSellTaskIdListLikeShopName(@Param("shopName")String shopName);
}
